﻿<Serializable()> _
Public Class RegraLote
    Inherits Regra

    Private _dataLimite As Nullable(Of Date)
    Public Overridable Property DataLimite() As Nullable(Of Date)
        Get
            Return _dataLimite
        End Get
        Set(ByVal value As Nullable(Of Date))
            _dataLimite = value
        End Set
    End Property

    Private _numeroLimiteLances As Nullable(Of Integer)
    Public Overridable Property NumeroLimiteLances() As Nullable(Of Integer)
        Get
            Return _numeroLimiteLances
        End Get
        Set(ByVal value As Nullable(Of Integer))
            _numeroLimiteLances = value
        End Set
    End Property


    Private _valorLimite As Nullable(Of Decimal)
    Public Overridable Property ValorLimite() As Nullable(Of Decimal)
        Get
            Return _valorLimite
        End Get
        Set(ByVal value As Nullable(Of Decimal))
            _valorLimite = value
        End Set
    End Property


    Private _lanceMinimo As Nullable(Of Decimal)
    Public Overridable Property LanceMinimo() As Nullable(Of Decimal)
        Get
            Return _lanceMinimo
        End Get
        Set(ByVal value As Nullable(Of Decimal))
            _lanceMinimo = value
        End Set
    End Property

    Private _comissao As Comissao
    Public Overridable Property Comissao() As Comissao
        Get
            Return _comissao
        End Get
        Set(ByVal value As Comissao)
            _comissao = value
        End Set
    End Property

    Private _autor As Usuario
    Public Overridable Property Autor() As Usuario
        Get
            Return _autor
        End Get
        Set(ByVal value As Usuario)
            _autor = value
        End Set
    End Property

    Private _minutosMaxSemLance As Nullable(Of Integer)
    ''' <summary>
    ''' Quantidade de minutos máxima sem efetivar um lance
    ''' Após essa quantidade máxima de minutos o último lance é aceito
    ''' </summary>
    ''' <value></value>
    ''' <returns></returns>
    ''' <remarks></remarks>
    Public Overridable Property MinutosMaxSemLance() As Nullable(Of Integer)
        Get
            Return _minutosMaxSemLance
        End Get
        Set(ByVal value As Nullable(Of Integer))
            _minutosMaxSemLance = value
        End Set
    End Property


End Class
